package com.cn.bulu.service;

import javax.servlet.http.HttpServletRequest;

import com.cn.bulu.pojo.Customer_address;
import com.cn.bulu.pojo.Goods;
import com.cn.bulu.pojo.Merchants;
import com.cn.bulu.utils.BuluResult;

public interface MerchantsService {
	// 下测量订单
	BuluResult toAddMeasureIndent(HttpServletRequest request, String name, String phone, Long subscribeTime,
			Integer roomNumB, String province, String city, String area, String address,String remark);

	// 下维修订单
	BuluResult toAddRepairIndent(HttpServletRequest request, String name, String phone, Long subscribeTime,
			String weiXbody, String province, String city, String area, String address, Double merchantsPrice,
			String baseAddress,String detailAddress,String remark,String takeGoodsTel,Integer isNeedTakeGoods);

	// 下安装订单
	BuluResult toAddAnzhuangIndent(HttpServletRequest request, String duogechuanglian, String name, String phone,
			Long subscribeTime, String province, String city, String area, String address, 
			String baseAddress,String detailAddress,String remark,String takeGoodsTel,Integer isNeedTakeGoods);

	// 查询广告
	BuluResult selectGuanggao();

	// 注册
	BuluResult insertMerchants(Merchants merchants);

	// 检查手机号是否注册
	BuluResult selectPhone(String phone);

	// 修改密码
	BuluResult updatePassword(String account);

	// 登录
	BuluResult login(String account,String imei);

	// 查询进行中
	BuluResult selectOngoing(HttpServletRequest request, Integer type);

	// 查询已完成
	BuluResult selectComplete(HttpServletRequest request, Integer type, Integer page);

	// 存测量日记
	BuluResult insertRiji(HttpServletRequest request, String name, String phone, String province, 
			String city, String area, String address,String remark,String baseAddress,
			String detailAddress,String takeGoodsTel,String isNeedTakeGoods);

	// 查测量日记
	BuluResult selectRiji(HttpServletRequest request, Integer page);

	// 根据手机号查询头像
	BuluResult selectHeadImg(String phone);

	// 添加商品
	BuluResult insertGoods(Integer indentId, Goods goods, String bumishu, String shamishu, String toumishu,
			String imgs,String finishShade);

	// 查询提现明细
	BuluResult selectMingxi(HttpServletRequest request,Integer page);

	// 查询进行中角标
	BuluResult selectJiaobiao(HttpServletRequest request);

	// 根据市查询维修费和维修备注
	BuluResult selectWeixiu(String shi,String areaCode);

	// 查询工人接单后取消应扣款
	BuluResult selectYingkou(Integer indentId);

	// 放弃订单
	BuluResult deleteIndent(HttpServletRequest request, Integer indentId);

	// 查询备注
	BuluResult selectBeizhu(String city);

	// 添加对工人的评价
	BuluResult insertEvaluation(Integer star, String content, HttpServletRequest request, String imgs,
			Integer indentId);

	// 删除测量日记
	BuluResult deleteRiji(Integer indentId);

	// 查询个人信息
	BuluResult selectGeren(HttpServletRequest request);

	// 修改头像
	BuluResult updateHeadImg(HttpServletRequest request, String headImg);

	// 修改信息
	BuluResult updateMerchants(Merchants merchants);

	// 根据订单号查询商品
	BuluResult selectGoods(Integer indentId);

	// 查询地址
	BuluResult selectAddress(HttpServletRequest request);

	// 添加地址
	BuluResult insertAddress(HttpServletRequest request, Customer_address address);

	// 删除地址
	BuluResult deleteAddress(Integer cuAdId);

	// 编辑地址
	BuluResult updateAddress(Customer_address address,String baseAddress,String detailAddress,
			String takeGoodsTel,String remark);

	// 设为默认
	BuluResult setDefault(HttpServletRequest request, Integer cuAdId);

	// 查询钱包
	BuluResult selectWallet(HttpServletRequest request);

	// 意见反馈
	BuluResult insertWenti(HttpServletRequest request, String problemCount, String imgs);

	// 查询消息中心
	BuluResult selectMessage(Integer page);

	// 更改手机号
	BuluResult updatePhone(HttpServletRequest request, String password);

	// 更换手机号
	BuluResult replacePhone(HttpServletRequest request, String phone);

	// 添加房间
	BuluResult insertRoom(Integer indentId, Goods goods);

	// 根据商品号查询商品信息
	BuluResult selectGoodxinxi(Integer goodsId);

	// 修改订单地址
	BuluResult updateIndent(Integer indentId, Customer_address address, String baseAddress,String detailAddress, String isNeedTakeGoods,Long subscribeTime,String takeGoodsTel);

	// 从测量日记生成安装订单
	BuluResult insertAindent(HttpServletRequest request, Integer indentId, String goodsIds, Long subscribeTime);

	// 删除商品
	BuluResult deleteGoods(String goodsIds,Integer indentId);

	// 根据订单id查询信息
	BuluResult selectIndent(Integer indentId);

	// 添加银行卡
	BuluResult insertBankCard(HttpServletRequest request, String boundBank, String bankNumber);

	// 查询银行卡
	BuluResult selectBankCard(HttpServletRequest request);

	// 设为默认银行卡
	BuluResult updateBankCard(HttpServletRequest request, Integer bankCardId);

	// 删除银行卡
	BuluResult deleteBankCard(Integer bankCardId);

	// 查询版权信息
	BuluResult selectCopyright();

	// 查询说明
	BuluResult selectAboutMe();

	// 查询软件使用许可协议
	BuluResult selectVersionIntroduce();

	// 查询平台服务协议
	BuluResult selectAgreement();

	// 进行支付
	BuluResult payMoney(HttpServletRequest request, Double addPrice, Integer indentId, Integer relievedBao,
			Integer type, Integer motorNum,Integer bigouNum, Integer sizhuagouNum, Double money,Double totalMoney,String differenceIds);

	// 支付订单成功之后回调
	BuluResult getAlipayapi(HttpServletRequest request);

	// 生成环信账号
	BuluResult generateAccount(HttpServletRequest request);

	// 余额支付验证密码
	BuluResult payBalance(HttpServletRequest request, Double addPrice, Integer indentId, Integer relievedBao,
			Integer type, Integer motorNum, String password, Integer bigouNum, Integer sizhuagouNum,Double totalMoney,String differenceIds);

	// 查询银行卡微信支付宝
	BuluResult selectBangding(HttpServletRequest request);

	// 申请提现
	BuluResult submitWithdrawal(HttpServletRequest request, Double money, Integer status, Integer bankCardId,
			String weixin, String zhifubao, String password, String name);

	// 查询补差价
	BuluResult selectDifference(HttpServletRequest request);

	// 修改商品信息
	BuluResult updateGoodsXinxi(Integer indentId, Integer goodsId, Integer style, String specials);

	// 查询该区域是否开通
	BuluResult theAreaIsDredge(String city,String workerSpaceCode);
	
	//用户充值接口专用
	BuluResult submitRecarge(HttpServletRequest request, Double money, Integer infer);
	

	BuluResult getMerchantRules(HttpServletRequest request);

}
